// pkgm 点击Tab
package main

import "fmt"

func main() {
	/*
		var n1 int8 = 2
		// var n2 int = 15
		// 不同类型之间不能直接运算
		// fmt.Println(n1 + n2)
		// 1.转为整型
		// 将n1转为int类型
		// var n3 int = int(n1)
		// fmt.Printf("n3 = %d 类型%T\n", n3, n3)
		// fmt.Println(n2 + n3)
		var n4 int16 = int16(n1)
		var n5 uint16 = uint16(n1)
		fmt.Printf("n4 = %d 类型：%T\n", n4, n4)
		fmt.Printf("n5 = %d 类型：%T\n", n5, n5)

		var n1 int = 5
		// 2.转为浮点型
		var f1 float64 = float64(n1)
		fmt.Printf("f1 = %.2f 类型：%T \n", f1, f1)

		// 3.转为字符串型
		var a int = 2
		var b float64 = 3.14
		var c bool = true
		var d rune = 'h'
		// 用法和Printf类型，Printf将一个字符串格式化输出，会执行打印输出
		// Sprintf执行一个字符串的格式化，返回一个字符串型
		s1 := fmt.Sprintf("%d", a)   // "2"
		s2 := fmt.Sprintf("%.2f", b) // "3.14"
		s3 := fmt.Sprintf("%t", c)   // "true"
		s4 := fmt.Sprintf("%c", d)   // "h"
		fmt.Printf("s1 = %s 类型：%T\n", s1, s1)
		fmt.Printf("s2 = %s 类型：%T\n", s2, s2)
		fmt.Printf("s3 = %s 类型：%T\n", s3, s3)
		fmt.Printf("s4 = %s 类型：%T\n", s4, s4)x"
	*/
	// 假设从获取数据中获取到了一个商品的标题、价格、是否在售
	// "商品名称：xx 价格：xx 是否在售：xx"
	title := "iPhone16"
	price := 5999.88
	is_onsale := true
	result := fmt.Sprintf("商品名称：%s 价格：%.2f 是否在售：%t", title, price, is_onsale)
	fmt.Println(result)

}
